<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.3.1"/>
<title>Open Event Machine API: event_machine_types.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Open Event Machine API
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('event__machine__types_8h.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a>  </div>
  <div class="headertitle">
<div class="title">event_machine_types.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Event Machine basic types.  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;stddef.h&gt;</code><br/>
<code>#include &lt;inttypes.h&gt;</code><br/>
<code>#include &lt;stdarg.h&gt;</code><br/>
<code>#include &lt;event_machine_hw_config.h&gt;</code><br/>
</div><div class="textblock"><div class="dynheader">
Include dependency graph for event_machine_types.h:</div>
<div class="dyncontent">
<div class="center"><img src="event__machine__types_8h__incl.png" border="0" usemap="#event__machine__types_8h" alt=""/></div>
<map name="event__machine__types_8h" id="event__machine__types_8h">
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="event__machine__types_8h__dep__incl.png" border="0" usemap="#event__machine__types_8hdep" alt=""/></div>
<map name="event__machine__types_8hdep" id="event__machine__types_8hdep">
<area shape="rect" id="node3" href="event__machine_8h.html" title="Event Machine API v1.0." alt="" coords="125,83,243,111"/><area shape="rect" id="node5" href="event__machine__core__mask_8h.html" title="Event Machine core mask functions." alt="" coords="5,161,147,205"/><area shape="rect" id="node7" href="event__machine__helper_8h.html" title="Event Machine helper functions and macros." alt="" coords="49,254,209,282"/><area shape="rect" id="node9" href="event__machine__group_8h.html" title="Event Machine optional fork&#45;join helper." alt="" coords="221,169,379,197"/></map>
</div>
</div>
<p><a href="event__machine__types_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionem__core__mask__t.html">em_core_mask_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type for queue group core mask.  <a href="unionem__core__mask__t.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a0bf4a25d46e18ee918e684e5deb27fa4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0bf4a25d46e18ee918e684e5deb27fa4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a0bf4a25d46e18ee918e684e5deb27fa4">PRI_EO</a>&#160;&#160;&#160;PRIu64</td></tr>
<tr class="memdesc:a0bf4a25d46e18ee918e684e5deb27fa4"><td class="mdescLeft">&#160;</td><td class="mdescRight">em_eo_t printf format <br/></td></tr>
<tr class="separator:a0bf4a25d46e18ee918e684e5deb27fa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0331964318f921644a88d3cc38c122e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0331964318f921644a88d3cc38c122e5"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a0331964318f921644a88d3cc38c122e5">PRI_QUEUE</a>&#160;&#160;&#160;PRIu64</td></tr>
<tr class="memdesc:a0331964318f921644a88d3cc38c122e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">em_queue_t printf format <br/></td></tr>
<tr class="separator:a0331964318f921644a88d3cc38c122e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac01ba4a56d14c1321b4d8416e54735f8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac01ba4a56d14c1321b4d8416e54735f8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#ac01ba4a56d14c1321b4d8416e54735f8">PRI_QGRP</a>&#160;&#160;&#160;PRIu64</td></tr>
<tr class="memdesc:ac01ba4a56d14c1321b4d8416e54735f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">em_queue_group_t printf format <br/></td></tr>
<tr class="separator:ac01ba4a56d14c1321b4d8416e54735f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af28fb8daf62b942ced417e158ed7e1c7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af28fb8daf62b942ced417e158ed7e1c7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#af28fb8daf62b942ced417e158ed7e1c7">EM_EO_UNDEF</a>&#160;&#160;&#160;EM_UNDEF_U64</td></tr>
<tr class="memdesc:af28fb8daf62b942ced417e158ed7e1c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalid EO id. <br/></td></tr>
<tr class="separator:af28fb8daf62b942ced417e158ed7e1c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8ba676fb5528d220363edad0aeef1ff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8ba676fb5528d220363edad0aeef1ff"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#ae8ba676fb5528d220363edad0aeef1ff">EM_QUEUE_UNDEF</a>&#160;&#160;&#160;EM_UNDEF_U64</td></tr>
<tr class="memdesc:ae8ba676fb5528d220363edad0aeef1ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalid queue. <br/></td></tr>
<tr class="separator:ae8ba676fb5528d220363edad0aeef1ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f2bef96eaf8b2855699d6adee7758f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f2bef96eaf8b2855699d6adee7758f4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a3f2bef96eaf8b2855699d6adee7758f4">EM_QUEUE_GROUP_UNDEF</a>&#160;&#160;&#160;EM_UNDEF_U64</td></tr>
<tr class="memdesc:a3f2bef96eaf8b2855699d6adee7758f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalid queue group. <br/></td></tr>
<tr class="separator:a3f2bef96eaf8b2855699d6adee7758f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03546e6a7e93665c52d479831e0a6dca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03546e6a7e93665c52d479831e0a6dca"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a03546e6a7e93665c52d479831e0a6dca">EM_OK</a>&#160;&#160;&#160;0</td></tr>
<tr class="memdesc:a03546e6a7e93665c52d479831e0a6dca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Operation successful. <br/></td></tr>
<tr class="separator:a03546e6a7e93665c52d479831e0a6dca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f9dbd41491db385bd4a3813e2f030a5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a1f9dbd41491db385bd4a3813e2f030a5">EM_ERROR</a>&#160;&#160;&#160;0xffffffff</td></tr>
<tr class="memdesc:a1f9dbd41491db385bd4a3813e2f030a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Operation not successful.  <a href="#a1f9dbd41491db385bd4a3813e2f030a5">More...</a><br/></td></tr>
<tr class="separator:a1f9dbd41491db385bd4a3813e2f030a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbe2c357995589ac5a8927f86e68af94"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acbe2c357995589ac5a8927f86e68af94"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#acbe2c357995589ac5a8927f86e68af94">EM_ESCOPE_BIT</a>&#160;&#160;&#160;(0x80000000u)</td></tr>
<tr class="memdesc:acbe2c357995589ac5a8927f86e68af94"><td class="mdescLeft">&#160;</td><td class="mdescRight">All EM internal error scopes should have bit 31 set NOTE: High bit is RESERVED for EM internal escopes and should not be used by the application. <br/></td></tr>
<tr class="separator:acbe2c357995589ac5a8927f86e68af94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a962bb467f721a89bbc8469f7c171aaca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a962bb467f721a89bbc8469f7c171aaca"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a962bb467f721a89bbc8469f7c171aaca">EM_ESCOPE</a>(escope)&#160;&#160;&#160;(<a class="el" href="event__machine__types_8h.html#acbe2c357995589ac5a8927f86e68af94">EM_ESCOPE_BIT</a> &amp; (escope))</td></tr>
<tr class="memdesc:a962bb467f721a89bbc8469f7c171aaca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if the error scope identifies an EM function (API or other internal) <br/></td></tr>
<tr class="separator:a962bb467f721a89bbc8469f7c171aaca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fd6d7ef83f28027c46e6fcf065b417d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9fd6d7ef83f28027c46e6fcf065b417d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a9fd6d7ef83f28027c46e6fcf065b417d">EM_ESCOPE_MASK</a>&#160;&#160;&#160;(0xFF000000)</td></tr>
<tr class="memdesc:a9fd6d7ef83f28027c46e6fcf065b417d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mask selects the high byte of the 32-bit escope. <br/></td></tr>
<tr class="separator:a9fd6d7ef83f28027c46e6fcf065b417d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a379fb5cd1f83499b44191afc5639638c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a379fb5cd1f83499b44191afc5639638c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a379fb5cd1f83499b44191afc5639638c">EM_ESCOPE_API_TYPE</a>&#160;&#160;&#160;(0xFFu)</td></tr>
<tr class="memdesc:a379fb5cd1f83499b44191afc5639638c"><td class="mdescLeft">&#160;</td><td class="mdescRight">EM API functions error scope &amp; mask. <br/></td></tr>
<tr class="separator:a379fb5cd1f83499b44191afc5639638c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a785956d4ec31a90c1d76c711562d01c1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a785956d4ec31a90c1d76c711562d01c1"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a785956d4ec31a90c1d76c711562d01c1">EM_ESCOPE_API</a>(escope)&#160;&#160;&#160;(((escope) &amp; <a class="el" href="event__machine__types_8h.html#a9fd6d7ef83f28027c46e6fcf065b417d">EM_ESCOPE_MASK</a>) == EM_ESCOPE_API_MASK)</td></tr>
<tr class="memdesc:a785956d4ec31a90c1d76c711562d01c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if the error scope identifies an EM API function. <br/></td></tr>
<tr class="separator:a785956d4ec31a90c1d76c711562d01c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8ee70476719b1f7fb60c32879282119"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab8ee70476719b1f7fb60c32879282119"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#ab8ee70476719b1f7fb60c32879282119">EM_CORE_MASK_SIZE</a>&#160;&#160;&#160;64</td></tr>
<tr class="memdesc:ab8ee70476719b1f7fb60c32879282119"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of the core mask in bits. <br/></td></tr>
<tr class="separator:ab8ee70476719b1f7fb60c32879282119"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a2f5b3fb43add8103da34b52cc1d0f2cc"><td class="memItemLeft" align="right" valign="top">typedef uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a2f5b3fb43add8103da34b52cc1d0f2cc">em_event_type_t</a></td></tr>
<tr class="memdesc:a2f5b3fb43add8103da34b52cc1d0f2cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Event type.  <a href="#a2f5b3fb43add8103da34b52cc1d0f2cc">More...</a><br/></td></tr>
<tr class="separator:a2f5b3fb43add8103da34b52cc1d0f2cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d373bd8469414626259c3ea14b5ee2a"><td class="memItemLeft" align="right" valign="top">typedef uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a1d373bd8469414626259c3ea14b5ee2a">em_eo_t</a></td></tr>
<tr class="memdesc:a1d373bd8469414626259c3ea14b5ee2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Execution Object identifier.  <a href="#a1d373bd8469414626259c3ea14b5ee2a">More...</a><br/></td></tr>
<tr class="separator:a1d373bd8469414626259c3ea14b5ee2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43cb5a167efa542d81180a54915d99bf"><td class="memItemLeft" align="right" valign="top">typedef uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a43cb5a167efa542d81180a54915d99bf">em_queue_t</a></td></tr>
<tr class="memdesc:a43cb5a167efa542d81180a54915d99bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queue identifier.  <a href="#a43cb5a167efa542d81180a54915d99bf">More...</a><br/></td></tr>
<tr class="separator:a43cb5a167efa542d81180a54915d99bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83c306852adcd934bc159b719fe482e3"><td class="memItemLeft" align="right" valign="top">typedef uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a83c306852adcd934bc159b719fe482e3">em_queue_group_t</a></td></tr>
<tr class="memdesc:a83c306852adcd934bc159b719fe482e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queue group identifier.  <a href="#a83c306852adcd934bc159b719fe482e3">More...</a><br/></td></tr>
<tr class="separator:a83c306852adcd934bc159b719fe482e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a125a101c5db94235eb758c8c32ab2628"><td class="memItemLeft" align="right" valign="top">typedef uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a125a101c5db94235eb758c8c32ab2628">em_status_t</a></td></tr>
<tr class="memdesc:a125a101c5db94235eb758c8c32ab2628"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error/Status code.  <a href="#a125a101c5db94235eb758c8c32ab2628">More...</a><br/></td></tr>
<tr class="separator:a125a101c5db94235eb758c8c32ab2628"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b0a5fb6ffe7f0fdb90caa388070dff3"><td class="memItemLeft" align="right" valign="top">typedef uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a5b0a5fb6ffe7f0fdb90caa388070dff3">em_escope_t</a></td></tr>
<tr class="memdesc:a5b0a5fb6ffe7f0fdb90caa388070dff3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error scope.  <a href="#a5b0a5fb6ffe7f0fdb90caa388070dff3">More...</a><br/></td></tr>
<tr class="separator:a5b0a5fb6ffe7f0fdb90caa388070dff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a093428598166c7c5d40351bc60809894"><td class="memItemLeft" align="right" valign="top">typedef uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a093428598166c7c5d40351bc60809894">em_queue_type_t</a></td></tr>
<tr class="memdesc:a093428598166c7c5d40351bc60809894"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queue type.  <a href="#a093428598166c7c5d40351bc60809894">More...</a><br/></td></tr>
<tr class="separator:a093428598166c7c5d40351bc60809894"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d3594d8e5e36f7b84796a99d7feee9a"><td class="memItemLeft" align="right" valign="top">typedef uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#a1d3594d8e5e36f7b84796a99d7feee9a">em_queue_prio_t</a></td></tr>
<tr class="memdesc:a1d3594d8e5e36f7b84796a99d7feee9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queue priority class.  <a href="#a1d3594d8e5e36f7b84796a99d7feee9a">More...</a><br/></td></tr>
<tr class="separator:a1d3594d8e5e36f7b84796a99d7feee9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aded70bd6da9a02c082e82e56742a319e"><td class="memItemLeft" align="right" valign="top">typedef uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__machine__types_8h.html#aded70bd6da9a02c082e82e56742a319e">em_pool_id_t</a></td></tr>
<tr class="memdesc:aded70bd6da9a02c082e82e56742a319e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Memory pool id.  <a href="#aded70bd6da9a02c082e82e56742a319e">More...</a><br/></td></tr>
<tr class="separator:aded70bd6da9a02c082e82e56742a319e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Event Machine basic types. </p>

<p>Definition in file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a1f9dbd41491db385bd4a3813e2f030a5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EM_ERROR&#160;&#160;&#160;0xffffffff</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Operation not successful. </p>
<p>Generic error code, other error codes are system specific. </p>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="test_appl_hello_8c-example.html#a12">test_appl_hello.c</a>.</dd>
</dl>
<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00225">225</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="a2f5b3fb43add8103da34b52cc1d0f2cc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t <a class="el" href="event__machine__types_8h.html#a2f5b3fb43add8103da34b52cc1d0f2cc">em_event_type_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Event type. </p>
<p>This is given to application for each received event and also needed for event allocation. It's an integer, but split into major and minor part. major-field categorizes the event and minor is more detailed system specific description. Major-part will not change by HW, but minor can be HW/SW platform specific and thus could be split into more sub-fields as needed. Application should use the access functions for reading major and minor part.</p>
<p>The only event type with defined content is EM_EVENT_TYPE_SW with minor type 0, which needs to be portable (direct pointer to data).</p>
<dl class="section see"><dt>See Also</dt><dd>em_get_type_major(), em_get_type_minor(), <a class="el" href="event__machine_8h.html#af132a04504b399fd5f59521f4f16306f" title="Receive event.">em_receive_func_t()</a> </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00070">70</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1d373bd8469414626259c3ea14b5ee2a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint64_t <a class="el" href="event__machine__types_8h.html#a1d373bd8469414626259c3ea14b5ee2a">em_eo_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Execution Object identifier. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="event__machine_8h.html#a196c7caa1177575fd424e9a0d2854da6" title="Create Execution Object (EO).">em_eo_create()</a> </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00111">111</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<a class="anchor" id="a43cb5a167efa542d81180a54915d99bf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint64_t <a class="el" href="event__machine__types_8h.html#a43cb5a167efa542d81180a54915d99bf">em_queue_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queue identifier. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="event__machine_8h.html#a15c0cb536f8c7c01692ccea07908944a" title="Create a new queue with a dynamic queue id.">em_queue_create()</a>, <a class="el" href="event__machine_8h.html#af132a04504b399fd5f59521f4f16306f" title="Receive event.">em_receive_func_t()</a>, <a class="el" href="event__machine_8h.html#aca4584a01b71429dfbb045342454b464" title="Send an event to a queue.">em_send()</a> </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00119">119</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<a class="anchor" id="a83c306852adcd934bc159b719fe482e3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint64_t <a class="el" href="event__machine__types_8h.html#a83c306852adcd934bc159b719fe482e3">em_queue_group_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queue group identifier. </p>
<p>Each queue belongs to one queue group, that defines a core mask for scheduling events, i.e. define which cores participate in the load balancing. Group can also allow only a single core for no load balancing.</p>
<p>Groups needs to be created as needed. One default group (EM_QUEUE_GROUP_DEFAULT) always exists, and that allows scheduling to all the cores running this execution binary instance.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="event__machine_8h.html#adbdbc7cadcd97ceae5682710965e16fd" title="Create a new queue group to control queue to core mapping.">em_queue_group_create()</a> </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00136">136</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<a class="anchor" id="a125a101c5db94235eb758c8c32ab2628"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t <a class="el" href="event__machine__types_8h.html#a125a101c5db94235eb758c8c32ab2628">em_status_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Error/Status code. </p>
<p>EM_OK (0) is the general code for success, other values describe failed operation.</p>
<dl class="section see"><dt>See Also</dt><dd>event_machine_hw_config.h, <a class="el" href="event__machine_8h.html#a41d418a82bfc4e80f7ad5ae73d5a4bd9" title="Error handler.">em_error_handler_t()</a>, <a class="el" href="event__machine_8h.html#a1d45cd3fa718f99bce956904b5e081de" title="Report an error.">em_error()</a> </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00222">222</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5b0a5fb6ffe7f0fdb90caa388070dff3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t <a class="el" href="event__machine__types_8h.html#a5b0a5fb6ffe7f0fdb90caa388070dff3">em_escope_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Error scope. </p>
<p>Identifies the error scope for interpreting error codes and variable arguments.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="event__machine_8h.html#a41d418a82bfc4e80f7ad5ae73d5a4bd9" title="Error handler.">em_error_handler_t()</a>, <a class="el" href="event__machine_8h.html#a1d45cd3fa718f99bce956904b5e081de" title="Report an error.">em_error()</a> </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00235">235</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<a class="anchor" id="a093428598166c7c5d40351bc60809894"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t <a class="el" href="event__machine__types_8h.html#a093428598166c7c5d40351bc60809894">em_queue_type_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queue type. </p>
<p>Affects the scheduling principle</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="event__machine_8h.html#a15c0cb536f8c7c01692ccea07908944a" title="Create a new queue with a dynamic queue id.">em_queue_create()</a>, event_machine_hw_config.h </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00325">325</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1d3594d8e5e36f7b84796a99d7feee9a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t <a class="el" href="event__machine__types_8h.html#a1d3594d8e5e36f7b84796a99d7feee9a">em_queue_prio_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Queue priority class. </p>
<p>Queue priority defines a system dependent QoS class, not just an absolute priority. EM gives freedom to implement the actual scheduling disciplines and the corresponding numeric values as needed, i.e. the actual values are system dependent and thus not portable, but the 5 pre-defined enums (em_queue_prio_e) are always valid. Application platform or middleware needs to define and distribute the other available values.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="event__machine_8h.html#a15c0cb536f8c7c01692ccea07908944a" title="Create a new queue with a dynamic queue id.">em_queue_create()</a>, event_machine_hw_config.h </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00341">341</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
<a class="anchor" id="aded70bd6da9a02c082e82e56742a319e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef uint32_t <a class="el" href="event__machine__types_8h.html#aded70bd6da9a02c082e82e56742a319e">em_pool_id_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Memory pool id. </p>
<p>Defines memory pool in <a class="el" href="event__machine_8h.html#a22fcb41f303628eebe4f0b45b6c64ab0" title="Allocate an event.">em_alloc()</a>. Default pool id is defined by EM_POOL_DEFAULT.</p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="event__machine_8h.html#a22fcb41f303628eebe4f0b45b6c64ab0" title="Allocate an event.">em_alloc()</a>, event_machine_hw_config.h </dd></dl>

<p>Definition at line <a class="el" href="event__machine__types_8h_source.html#l00355">355</a> of file <a class="el" href="event__machine__types_8h_source.html">event_machine_types.h</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="event__machine__types_8h.html">event_machine_types.h</a></li>
    <li class="footer">Generated on Wed Aug 7 2013 15:17:39 for Open Event Machine API by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
  </ul>
</div>
</body>
</html>
